import request from './request'

/**
 * 发送手机验证码
 * @param {string} phone - 手机号
 */
export const sendVerificationCode = (phone) => {
  return request({
    url: '/login/code/send/',
    method: 'post',
    data: { phone }
  })
}

/**
 * 手机号+验证码登录
 * @param {string} phone - 手机号
 * @param {string} code - 验证码
 * @param {string} userType - 用户角色 (jobseeker/recruiter)
 */
export const phoneLogin = (phone, code, userType = 'jobseeker') => {
  return request({
    url: '/login/phone/',
    method: 'post',
    data: { phone, code, user_type: userType }
  })
}

/**
 * 获取钉钉登录授权URL
 */
export const getDingTalkAuthUrl = () => {
  return request({
    url: '/login/dingtalk/qrcode/',
    method: 'get'
  })
}

/**
 * 上传身份证照片到七牛云
 * @param {File} frontImage - 身份证正面照片
 * @param {File} backImage - 身份证背面照片
 */
export const uploadIdCard = (frontImage, backImage) => {
  const formData = new FormData()
  formData.append('front_image', frontImage)
  formData.append('back_image', backImage)
  
  return request({
    url: '/auth/idcard/upload/',
    method: 'post',
    data: formData
    // 注意：不要手动设置 Content-Type，让浏览器自动设置（包括 boundary）
  })
}

/**
 * 身份证 OCR 识别
 * @param {File} frontImage - 身份证正面照片
 * @param {File} backImage - 身份证背面照片
 */
export const ocrIdCard = (frontImage, backImage) => {
  const formData = new FormData()
  formData.append('front_image', frontImage)
  formData.append('back_image', backImage)
  
  return request({
    url: '/auth/idcard/ocr/',
    method: 'post',
    data: formData
    // 注意：不要手动设置 Content-Type，让浏览器自动设置（包括 boundary）
  })
}

/**
 * 提交实名认证信息
 * @param {Object} data - 身份证信息
 */
export const submitIdCardVerification = (data) => {
  return request({
    url: '/auth/idcard/submit/',
    method: 'post',
    data
  })
}
